<html>
<head><meta charset="utf-8"><title>design meeting 2019-09-20 · t-compiler · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/index.html">t-compiler</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html">design meeting 2019-09-20</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="176193713"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176193713" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176193713">(Sep 20 2019 at 13:43)</a>:</h4>
<p>Dear <span class="user-group-mention" data-user-group-id="897">@T-compiler/meeting</span>: Design meeting today in <strong>20 minutes</strong>. </p>
<p>Topic: Target tier policy, <a href="https://github.com/rust-lang/compiler-team/issues/166" target="_blank" title="https://github.com/rust-lang/compiler-team/issues/166">compiler-team#166</a></p>
<p>Feel free to pre-read <span class="user-mention" data-user-id="239881">@Josh Triplett</span>'s <a href="https://gist.github.com/joshtriplett/40191791541ea2a3d61b7fe1d381a0e7" target="_blank" title="https://gist.github.com/joshtriplett/40191791541ea2a3d61b7fe1d381a0e7">proposal</a> =)</p>



<a name="176193791"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176193791" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176193791">(Sep 20 2019 at 13:44)</a>:</h4>
<p>Also: looking for volunteers to do a summary after the fact.</p>
<p>Example: <a href="https://github.com/rust-lang/compiler-team/pull/173" target="_blank" title="https://github.com/rust-lang/compiler-team/pull/173">https://github.com/rust-lang/compiler-team/pull/173</a> (which summarized our last design meeting)</p>



<a name="176194158"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176194158" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176194158">(Sep 20 2019 at 13:48)</a>:</h4>
<p>I'm here and ready.</p>



<a name="176194773"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176194773" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176194773">(Sep 20 2019 at 13:57)</a>:</h4>
<p>BTW, <span class="user-mention" data-user-id="116015">@Alex Crichton</span>, are you able to attend this meeting about target tierse? I, uh, meant to ask you earlier, but I don't think I did.</p>



<a name="176195089"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176195089" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176195089">(Sep 20 2019 at 14:01)</a>:</h4>
<p>o/</p>



<a name="176195121"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176195121" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176195121">(Sep 20 2019 at 14:01)</a>:</h4>
<p>OK <span class="user-group-mention" data-user-group-id="897">@T-compiler/meeting</span> -- design meeting is now. I'll give till 10:03 for people to show up</p>



<a name="176195122"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176195122" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176195122">(Sep 20 2019 at 14:01)</a>:</h4>
<h1>Announcements</h1>



<a name="176195375"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176195375" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176195375">(Sep 20 2019 at 14:04)</a>:</h4>
<p>OK, shall we get started?</p>



<a name="176195381"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176195381" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176195381">(Sep 20 2019 at 14:04)</a>:</h4>
<p>I guess not a lot of announcements since yesterday :)</p>



<a name="176195389"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176195389" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alex Crichton <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176195389">(Sep 20 2019 at 14:04)</a>:</h4>
<p><span aria-label="wave" class="emoji emoji-1f44b" role="img" title="wave">:wave:</span></p>



<a name="176195390"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176195390" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176195390">(Sep 20 2019 at 14:04)</a>:</h4>
<p>I'll just add one: next week is the planning meeting</p>



<a name="176195395"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176195395" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176195395">(Sep 20 2019 at 14:04)</a>:</h4>
<p><span class="user-mention" data-user-id="239881">@Josh Triplett</span>, care to start?</p>



<a name="176195575"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176195575" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176195575">(Sep 20 2019 at 14:06)</a>:</h4>
<p>So: I've gotten various review requests for adding new targets (at tier 3), other people have as well, and everyone has thus far just evaluated them independently and assumed sufficient authority to accept them, while often observing the lack of a policy anywhere to support them.</p>



<a name="176195594"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176195594" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176195594">(Sep 20 2019 at 14:06)</a>:</h4>
<p>I've also had discussions with people about what it takes to move targets up to a higher tier.</p>



<a name="176195600"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176195600" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176195600">(Sep 20 2019 at 14:06)</a>:</h4>
<p>I'd like to add that I feel like (a) I often don't know what tier something is and (b) it's very confusing to me how to prioritize bugs that are not in "mainstream" platforms</p>



<a name="176195604"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176195604" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176195604">(Sep 20 2019 at 14:06)</a>:</h4>
<p>And for that, the answer has always firmly been "I don't know", with perhaps a dash of "maybe ask the core team or something".</p>



<a name="176195609"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176195609" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176195609">(Sep 20 2019 at 14:06)</a>:</h4>
<p>(from POV of "compiler team dev")</p>



<a name="176195732"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176195732" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176195732">(Sep 20 2019 at 14:08)</a>:</h4>
<p>I also feel that tier policy is something that needs to very carefully consider the failure modes that it can fall into.</p>



<a name="176195774"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176195774" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176195774">(Sep 20 2019 at 14:09)</a>:</h4>
<p>Thinking about it from a perspective of how we prioritize things: when we make a target tier 2, or tier 1, as far as I can tell we currently assume that this means anyone who breaks the build or tests has the sole responsibility to fix it. Even if for a platform they don't understand or have access to.</p>



<a name="176195831"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176195831" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176195831">(Sep 20 2019 at 14:09)</a>:</h4>
<p>wait is that right? Do we do CI for all of our tier 2 targets?</p>



<a name="176195845"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176195845" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176195845">(Sep 20 2019 at 14:09)</a>:</h4>
<p>we do cross-compiling for all tier 2 targets</p>



<a name="176195847"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176195847" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176195847">(Sep 20 2019 at 14:09)</a>:</h4>
<p>Can we just review briefly what tier 1/2/3 mean?</p>



<a name="176195913"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176195913" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176195913">(Sep 20 2019 at 14:10)</a>:</h4>
<p>Let's, yes.</p>



<a name="176195922"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176195922" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176195922">(Sep 20 2019 at 14:10)</a>:</h4>
<p>(then some tier 2 target also run their tests inside qemu today)</p>



<a name="176195944"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176195944" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176195944">(Sep 20 2019 at 14:10)</a>:</h4>
<p>I think it is:</p>
<p>- Tier 1 -- fully supported. We run tests and fix bugs.<br>
- Tier 2 -- we run builds, but do not run tests; I am not clear on how much we support this<br>
- Tier 3 -- we let you land code but do not block on it building</p>



<a name="176195966"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176195966" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176195966">(Sep 20 2019 at 14:10)</a>:</h4>
<p>Right now: tier 3 means "this target exists in the source and people can build it if they want". There are some tier 3 targets for which we also build binaries for rustup. Then tier 2 means we guarantee builds but not tests passing, and tier 1 means we guarantee builds and tests.</p>



<a name="176195986"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176195986" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176195986">(Sep 20 2019 at 14:11)</a>:</h4>
<p>do we distribute all tier 2 targets with rustup?</p>



<a name="176196007"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196007" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alex Crichton <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196007">(Sep 20 2019 at 14:11)</a>:</h4>
<p>to add to that, in practice "tier 2" we actually test some one CI, so we effectively put the burden on PR authors to fix tests. For "tier 3" there's also a strong sentiment that you should fix platforms in your PR if it's small, so it's effectively that we do frequently block on building it (asking users to build it locally)</p>



<a name="176196015"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196015" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196015">(Sep 20 2019 at 14:11)</a>:</h4>
<p><a href="https://forge.rust-lang.org/release/platform-support.html" target="_blank" title="https://forge.rust-lang.org/release/platform-support.html">https://forge.rust-lang.org/release/platform-support.html</a></p>



<a name="176196023"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196023" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alex Crichton <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196023">(Sep 20 2019 at 14:11)</a>:</h4>
<p>tbh the tier distinction I think is pretty fuzzy today and there's probably more exceptions to the rules than there are rules</p>



<a name="176196078"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196078" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196078">(Sep 20 2019 at 14:12)</a>:</h4>
<blockquote>
<p>do we distribute all tier 2 targets with rustup?</p>
</blockquote>
<p>mostly, there is a "tier 2.5" that's not shipped but built</p>



<a name="176196089"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196089" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alex Crichton <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196089">(Sep 20 2019 at 14:12)</a>:</h4>
<p>it may be best to go over <span class="user-mention" data-user-id="239881">@Josh Triplett</span>'s proposal for new tiers though?</p>



<a name="176196091"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196091" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196091">(Sep 20 2019 at 14:12)</a>:</h4>
<p><span class="user-mention" data-user-id="116015">@Alex Crichton</span> are you saying we test <strong>some</strong> Tier 2 targets on CI? (but not all)</p>



<a name="176196103"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196103" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alex Crichton <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196103">(Sep 20 2019 at 14:12)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> correct yeah, for example wasm/arm/aarch64 are all "tier 2" but we test them on CI (same w/ emscripten)</p>



<a name="176196115"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196115" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196115">(Sep 20 2019 at 14:12)</a>:</h4>
<p>One other interesting distinction...</p>



<a name="176196126"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196126" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alex Crichton <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196126">(Sep 20 2019 at 14:12)</a>:</h4>
<p>that's where the current tier distinction is probably too fuzzy to talk about since it's just so fuzzy with so many exceptions</p>



<a name="176196136"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196136" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196136">(Sep 20 2019 at 14:13)</a>:</h4>
<p>For tier 2, we don't test builds of <code>rustc</code> itself (e.g. for raspberry Pi), right? I think that has been a reason we see some bugs arise that compiler team is not prepared to address</p>



<a name="176196155"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196155" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196155">(Sep 20 2019 at 14:13)</a>:</h4>
<p>Some targets are things that we actually build <em>hosted toolchains</em> for (such as a binary of rustc and cargo running <em>on</em> ARM Linux), but most targets we just cross-compile std and core.</p>



<a name="176196156"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196156" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alex Crichton <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196156">(Sep 20 2019 at 14:13)</a>:</h4>
<p><span class="user-mention" data-user-id="116083">@pnkfelix</span> correct we only actually run compilers on x86/x86_64 platforms</p>



<a name="176196194"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196194" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alex Crichton <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196194">(Sep 20 2019 at 14:13)</a>:</h4>
<p>(note that whether or not we build rustc/cargo for a target also frequently evolves over time to add more wrenches)</p>



<a name="176196258"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196258" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196258">(Sep 20 2019 at 14:14)</a>:</h4>
<p>OK. So I agree it's probably not worth getting too far into the weeds of what we do today, but I do think it's worth trying to highlight all the "columns" -- i.e., the traditional tier description leaves out lots of important details (which may even indicate we want more tiers...)</p>



<a name="176196269"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196269" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196269">(Sep 20 2019 at 14:14)</a>:</h4>
<p>For today, I don't think we need to cover "which platforms do we build rustc and cargo for". That's less a <em>support</em> policy than it is a "which platforms do people need" policy.</p>



<a name="176196351"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196351" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196351">(Sep 20 2019 at 14:15)</a>:</h4>
<p>What I do want to cover is the tier policy proposal. I wrote it up largely as a straw proposal, to garner feedback, but I <em>think</em> I covered most of what we're likely to care about for adding new tiers.</p>



<a name="176196356"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196356" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196356">(Sep 20 2019 at 14:15)</a>:</h4>
<p>To me, though the high order bit is what level of support we are expected to provide when things go wrong. I think then it is kind of:</p>
<p>- Tier 3 -- none at all.<br>
- Tier 2 -- Rust org will notify you, but there should be some dedicated folks who will fix independently (sort of like tools)<br>
- Tier 1 -- we block PRs (and maybe WASM is just misclassified, for example) ?</p>



<a name="176196366"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196366" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196366">(Sep 20 2019 at 14:15)</a>:</h4>
<p>yep, sounds good, sorry</p>



<a name="176196431"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196431" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196431">(Sep 20 2019 at 14:16)</a>:</h4>
<p>That's an interesting point, actually.</p>



<a name="176196437"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196437" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196437">(Sep 20 2019 at 14:16)</a>:</h4>
<p>(we block PRs on some arm virtualized testing too)</p>



<a name="176196438"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196438" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196438">(Sep 20 2019 at 14:16)</a>:</h4>
<p>There are some "tier 2" platforms for which we <em>should</em> run tests.</p>



<a name="176196508"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196508" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196508">(Sep 20 2019 at 14:17)</a>:</h4>
<p>But also, I would argue that for both tier 2 and tier 1, we do need dedicated folks "on call" who care about a target, unless we specifically say that it's a target for which we can expect everyone to pitch in with no special expertise needed.</p>



<a name="176196579"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196579" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196579">(Sep 20 2019 at 14:18)</a>:</h4>
<p>Today, at least, we do block PRs on tier 2 building and tier 1 passing tests.</p>



<a name="176196619"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196619" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196619">(Sep 20 2019 at 14:18)</a>:</h4>
<p>(And on some tier 2 passing tests.)</p>



<a name="176196638"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196638" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196638">(Sep 20 2019 at 14:18)</a>:</h4>
<p>I agree with <span class="user-mention" data-user-id="116009">@nikomatsakis</span>'s observation that in practice we do treat WASM targets as tier 1.</p>



<a name="176196648"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196648" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196648">(Sep 20 2019 at 14:18)</a>:</h4>
<p>(And we ought to put out a press release to that effect. ;) )</p>



<a name="176196679"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196679" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196679">(Sep 20 2019 at 14:19)</a>:</h4>
<p>I definitely like the idea of "dedicated folks"</p>



<a name="176196681"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196681" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196681">(Sep 20 2019 at 14:19)</a>:</h4>
<p>I think the tier 2 / tier 1 distinction still makes sense: guaranteed build versus guaranteed tests pass.</p>



<a name="176196717"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196717" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Tshepang Lekhonkhobe <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196717">(Sep 20 2019 at 14:19)</a>:</h4>
<p>should we use a different term than "tier X", and instead maintain a table, with instructions on what to do in order for a platform to get a check mark</p>



<a name="176196732"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196732" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196732">(Sep 20 2019 at 14:19)</a>:</h4>
<p>I've also thought about having "instructions for debugging problems" -- i.e., I'd like to know how to run qemu etc</p>



<a name="176196802"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196802" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196802">(Sep 20 2019 at 14:20)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> Yeah, that's a good idea.</p>



<a name="176196807"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196807" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196807">(Sep 20 2019 at 14:20)</a>:</h4>
<p>In the proposal I had this: "should use any such issue as an opportunity to educate the Rust community about portability to their target."</p>



<a name="176196858"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196858" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196858">(Sep 20 2019 at 14:21)</a>:</h4>
<blockquote>
<p>should we use a different term than "tier X", and instead maintain a table, with instructions on what to do in order for a platform to get a check mark</p>
</blockquote>
<p>(I was wondering the same, and it's probably a good idea, but I do think it's still useful to have broad categories -- i.e., to be tier 1, you need all these boxes checked -- in any case I think we can defer this detail slightly)</p>



<a name="176196863"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196863" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196863">(Sep 20 2019 at 14:21)</a>:</h4>
<p>But I'm going to add a bullet point saying "If possible, instructions for the Rust community for how to build and run tests for the platform, ideally using emulation."</p>



<a name="176196891"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196891" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196891">(Sep 20 2019 at 14:21)</a>:</h4>
<p>I guess I would say that, absent such instructions, they should not expect any assistance -- and we should not block on tests :)</p>



<a name="176196972"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176196972" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176196972">(Sep 20 2019 at 14:22)</a>:</h4>
<p>Yeah, you <em>have</em> to have such instructions for tier 1 (though they're allowed to be "you need xyz hardware"), and you <em>should</em> have such instructions for tier 2 or if not you're expected to be pageable at 3am. :)</p>



<a name="176197122"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176197122" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176197122">(Sep 20 2019 at 14:24)</a>:</h4>
<p>Any thoughts on the proposal requirements as written? Would it be helpful for me to go over the tiers one by one?</p>



<a name="176197130"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176197130" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176197130">(Sep 20 2019 at 14:25)</a>:</h4>
<p>When it comes to this idea of "dedicated folks" to contact for Tier 2 issues, that the set of such folks needs to be larger than 1 person for support to be viable? and if this is right, do we have any idea where the threshold lies?</p>



<a name="176197154"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176197154" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alex Crichton <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176197154">(Sep 20 2019 at 14:25)</a>:</h4>
<p>One thing I think is pretty important to consider here as well is that we've got a relatively good track record of figuring out what tiers are. Although it slightly changes over time we generally all seem to always have agreement there's three tiers and a vague sense of commonality amongst the requirements. What I don't think we have a great process for is movement between tiers and addition to tiers. For example wasm didn't exactly go through a formal process to get tested on CI (nor did really anything else). I think it's definitely important to flesh out the process a bit in terms of how things get added to tiers, where/when they get moved, etc.</p>



<a name="176197169"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176197169" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alex Crichton <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176197169">(Sep 20 2019 at 14:25)</a>:</h4>
<p><span class="user-mention" data-user-id="239881">@Josh Triplett</span>'s proposal highlights much of this already, just wanted to highlight the highlight</p>



<a name="176197226"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176197226" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176197226">(Sep 20 2019 at 14:26)</a>:</h4>
<blockquote>
<p>if not you're expected to be pageable at 3am. :)</p>
</blockquote>
<p>regarding that, a thing I haven't seen addressed in the proposal is what happens when some requirements are not meet anymore, do we downgrade tiers? is that a breaking change (I think so)?</p>



<a name="176197239"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176197239" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176197239">(Sep 20 2019 at 14:26)</a>:</h4>
<blockquote>
<p>I think it's definitely important to flesh out the process a bit in terms of how things get added to tiers, where/when they get moved, etc.</p>
</blockquote>
<p>yes, I wanted to emphasize this -- and also that the doc doesn't mention the release or infra teams, but it seems like they have a role in this too</p>



<a name="176197245"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176197245" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176197245">(Sep 20 2019 at 14:26)</a>:</h4>
<p><span class="user-mention" data-user-id="116083">@pnkfelix</span> I think I'd put it this way:<br>
The easier your target is for people to handle, the less people you need on call.</p>



<a name="176197255"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176197255" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176197255">(Sep 20 2019 at 14:26)</a>:</h4>
<p>(my question <em>may</em> be in the weeds, but it seems relevant in terms of giving guidance as to when a target could possibly be promoted from tier 3 to tier 2)</p>



<a name="176197266"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176197266" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176197266">(Sep 20 2019 at 14:26)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> I did mention those teams, actually.</p>



<a name="176197278"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176197278" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176197278">(Sep 20 2019 at 14:26)</a>:</h4>
<p>(ok, I missed it <span aria-label="heart" class="emoji emoji-2764" role="img" title="heart">:heart:</span>)</p>



<a name="176197323"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176197323" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176197323">(Sep 20 2019 at 14:27)</a>:</h4>
<blockquote>
<p>is that a breaking change (I think so)?</p>
</blockquote>
<p>I think only Tier 1 should carry any expectation of permanence</p>



<a name="176197328"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176197328" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alex Crichton <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176197328">(Sep 20 2019 at 14:27)</a>:</h4>
<p>to some degree there's also "breaking changes" compatibility within a tier, for example how much of a breaking change is it to increase our kernel requirement for libstd on x86_64 Linux? Increasing the required emscripten version for the emscripten targets? Adding atomics to a wasm target? (etc)</p>



<a name="176197340"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176197340" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alex Crichton <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176197340">(Sep 20 2019 at 14:27)</a>:</h4>
<p>sorry I don't want to pile on too much here</p>



<a name="176197362"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176197362" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176197362">(Sep 20 2019 at 14:28)</a>:</h4>
<p>not sure how much release is interested in this -- infra should be at least consulted even on tier 2 though, if only for CI capacity</p>



<a name="176197399"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176197399" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176197399">(Sep 20 2019 at 14:28)</a>:</h4>
<p>I just added a new point under all three tiers for instructions/documentation.</p>



<a name="176197420"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176197420" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alex Crichton <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176197420">(Sep 20 2019 at 14:28)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> although permanence is also a good question, Apple itself is killing <code>i686-apple-darwin</code>, so how long should we keep it alive?</p>



<a name="176197449"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176197449" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176197449">(Sep 20 2019 at 14:28)</a>:</h4>
<p>(c.f. cygwin)</p>



<a name="176197465"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176197465" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176197465">(Sep 20 2019 at 14:28)</a>:</h4>
<p>(we might have to kill that targert soon<em>ish</em> due to the CI platform deprecating old images anyway)</p>



<a name="176197494"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176197494" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176197494">(Sep 20 2019 at 14:29)</a>:</h4>
<p>it seems like we're getting too afield -- perhaps the best answer is going to be that we should try to have some known people who decide the answer, and outline some rough criteria</p>



<a name="176197530"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176197530" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176197530">(Sep 20 2019 at 14:29)</a>:</h4>
<p><span aria-label="+1" class="emoji emoji-1f44d" role="img" title="+1">:+1:</span></p>



<a name="176197628"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176197628" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176197628">(Sep 20 2019 at 14:30)</a>:</h4>
<p><span class="user-mention" data-user-id="239881">@Josh Triplett</span> so overall I really liked your proposal, I'd like to give you a chance to steer the conversation here towards the point you would most like to dig into</p>



<a name="176197651"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176197651" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176197651">(Sep 20 2019 at 14:30)</a>:</h4>
<p>Roughly speaking, I think "if a target stops meeting the requirements, and especially if it blocks ongoing work in the Rust community, the compiler team will determine if that target needs to be downgraded".</p>



<a name="176197654"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176197654" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176197654">(Sep 20 2019 at 14:30)</a>:</h4>
<p>(i.e., we're at the 30 minute point, so I want to make sure we get to everything)</p>



<a name="176197681"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176197681" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176197681">(Sep 20 2019 at 14:30)</a>:</h4>
<p>does the document cover removing a target entirely? Taking it from tier 3 to nothing?</p>



<a name="176197817"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176197817" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176197817">(Sep 20 2019 at 14:32)</a>:</h4>
<p><span class="user-mention" data-user-id="116083">@pnkfelix</span> It doesn't, but it should. Something like "If a tier 3 target shows no signs of activity and has not built for some time, and removing it would improve the quality of the Rust codebase, we may post a PR to remove it; any such PR will be CCed to people who have previously worked on the platform, to check potential interest."</p>



<a name="176197832"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176197832" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176197832">(Sep 20 2019 at 14:32)</a>:</h4>
<p>Sound good?</p>



<a name="176197867"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176197867" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176197867">(Sep 20 2019 at 14:32)</a>:</h4>
<p>OK, so focusing on the key points here:</p>



<a name="176197919"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176197919" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176197919">(Sep 20 2019 at 14:33)</a>:</h4>
<p>Let's start with "Is there any objection to the description of tier 3?". I'd like to ratify consensus on what (minimal) requirements we have to merge a PR adding a new tier 3 target.</p>



<a name="176198001"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198001" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198001">(Sep 20 2019 at 14:34)</a>:</h4>
<p>For reference, the text:<br>
At this tier, the Rust project provides no official support for a target, so we<br>
place minimal requirements on the introduction of targets.</p>
<p>- No central decision is required to add a new tier 3 target. Reviewers may<br>
  always use their own best judgment regarding the quality of work, and the<br>
  suitability of a target for the Rust project.<br>
- If a reviewer wishes to consult a broader team for additional guidance, they<br>
  should contact the compiler team.<br>
- If the proposer of a target wishes to appeal the rejection of a target, they<br>
  may contact the compiler team.<br>
- Tier 3 targets must use naming consistent with any existing targets; for<br>
  instance, a target for a similar CPU or OS should not gratuitously use an<br>
  inconsistent name for that CPU or OS. Targets should normally use the same<br>
  names as used elsewhere in the broader ecosystem (such as in other toolchains),<br>
  unless they have a very good reason to diverge.<br>
- Tier 3 targets may have unusual requirements to build or use, but must not<br>
  create legal issues for the Rust project or for developers who work on those<br>
  targets.<br>
- Where possible, tier 3 targets may wish to provide documentation for the Rust<br>
  community for how to build and run tests for the platform, ideally using<br>
  emulation.<br>
- Patches adding or updating tier 3 targets must not break any existing target.</p>



<a name="176198038"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198038" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198038">(Sep 20 2019 at 14:34)</a>:</h4>
<p>I imagine the "no central decision required" is the most potentially controversial part, but I'm on board. We're basically saying "we'll assume it's ok but be prepared to withdraw if problems arise"</p>



<a name="176198069"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198069" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alex Crichton <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198069">(Sep 20 2019 at 14:35)</a>:</h4>
<p>I do think we need to add some level of consensus beyond just the reviewer</p>



<a name="176198082"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198082" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alex Crichton <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198082">(Sep 20 2019 at 14:35)</a>:</h4>
<p>for example I would prefer to not add a target which completely changes how libcore/libstd are organized</p>



<a name="176198086"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198086" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198086">(Sep 20 2019 at 14:35)</a>:</h4>
<p>We're also saying "if you want a central decision, or the reviewer wants a central decision, they should poke the compiler team", so we're saying <em>which</em> team has responsibility.</p>



<a name="176198182"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198182" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198182">(Sep 20 2019 at 14:36)</a>:</h4>
<p><span class="user-mention" data-user-id="116015">@Alex Crichton</span> I think that falls under "best judgment regarding the quality of work and the suitability of a target for the Rust project".</p>



<a name="176198208"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198208" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alex Crichton <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198208">(Sep 20 2019 at 14:36)</a>:</h4>
<p>well we can always run with it in practice and see how it fares</p>



<a name="176198216"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198216" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198216">(Sep 20 2019 at 14:36)</a>:</h4>
<p>I personally am willing to try the text as written</p>



<a name="176198228"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198228" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198228">(Sep 20 2019 at 14:36)</a>:</h4>
<p>yeah it sounds good</p>



<a name="176198235"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198235" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198235">(Sep 20 2019 at 14:36)</a>:</h4>
<p>If a reviewer looks at a PR that massively overhauls libcore in order to make a new target work, and doesn't say "uh, hey, other people should review this", they're kinda not doing their job as a reviewer.</p>



<a name="176198241"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198241" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198241">(Sep 20 2019 at 14:36)</a>:</h4>
<p>and we can tell the reviewers to be conservative in their decisions</p>



<a name="176198253"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198253" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198253">(Sep 20 2019 at 14:36)</a>:</h4>
<blockquote>
<p>If a reviewer looks at a PR that massively overhauls libcore in order to make a new target work, and doesn't say "uh, hey, other people should review this", they're kinda not doing their job as a reviewer.</p>
</blockquote>
<p>I think you should make that explicit</p>



<a name="176198267"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198267" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198267">(Sep 20 2019 at 14:37)</a>:</h4>
<p>Fair. Writing that down...</p>



<a name="176198269"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198269" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198269">(Sep 20 2019 at 14:37)</a>:</h4>
<p>the main question I have is whether the compiler team really will have the knowledge to always make the call.</p>



<a name="176198274"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198274" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198274">(Sep 20 2019 at 14:37)</a>:</h4>
<p>I think we should say:</p>
<p>- Non-intrusive PRs can be accepted without add'l process</p>



<a name="176198282"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198282" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198282">(Sep 20 2019 at 14:37)</a>:</h4>
<p>but if they don't, I think the compiler team will realize it</p>



<a name="176198292"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198292" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198292">(Sep 20 2019 at 14:37)</a>:</h4>
<p>(and then pull in the additional teams)</p>



<a name="176198316"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198316" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198316">(Sep 20 2019 at 14:37)</a>:</h4>
<p>yeah, I'm actually not sure compile team is best for this (And elsehwere) but I thikn we're not he worst. I think we <em>may</em> want to instead have it be like release team or something. But I was going to wait till later to raise that.</p>



<a name="176198334"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198334" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198334">(Sep 20 2019 at 14:38)</a>:</h4>
<p>whichever team it is is going to have to pull in other teams in the end, I think</p>



<a name="176198402"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198402" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alex Crichton <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198402">(Sep 20 2019 at 14:38)</a>:</h4>
<p>tbh 90% of the code changes for a new target are typically in libcore/libstd</p>



<a name="176198408"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198408" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Alex Crichton <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198408">(Sep 20 2019 at 14:38)</a>:</h4>
<p>and like one new target file in the compiler</p>



<a name="176198414"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198414" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198414">(Sep 20 2019 at 14:38)</a>:</h4>
<p>not sure how the release team has a stake, especially in tier 3 platforms</p>



<a name="176198424"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198424" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198424">(Sep 20 2019 at 14:38)</a>:</h4>
<p>Done: <br>
- If a proposed target or target-specific patch substantially changes code<br>
  shared with other targets (not just target-specific code), the reviewer<br>
  should consult the compiler team.</p>



<a name="176198486"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198486" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198486">(Sep 20 2019 at 14:39)</a>:</h4>
<p>Regarding the release team: right now, I wrote that new tier 1 targets require release and compiler team approval, new tier 2 requires compiler team approval, and new tier 3 doesn't need any approval (unless invasive).</p>



<a name="176198496"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198496" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198496">(Sep 20 2019 at 14:39)</a>:</h4>
<p>Open to changing that, as long as we have a clear path/ownership.</p>



<a name="176198565"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198565" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198565">(Sep 20 2019 at 14:40)</a>:</h4>
<p>since it sounds like tier 2 targets do impose CI building (and some testing?) overhead, we may need T-infrastructure approval for new tier 2, right?</p>



<a name="176198579"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198579" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198579">(Sep 20 2019 at 14:40)</a>:</h4>
<p>I'd like an infra approval for tier 2 and 1 at least</p>



<a name="176198636"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198636" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198636">(Sep 20 2019 at 14:41)</a>:</h4>
<p>( that is perhaps somewhat implicit, isn't it? i.e., if the requirement to be tier 2 is to have CI support, and infra adds CI ... )</p>



<a name="176198637"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198637" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198637">(Sep 20 2019 at 14:41)</a>:</h4>
<p><span class="user-mention" data-user-id="121055">@Pietro Albini</span> I currently have this in tier 1:</p>
<blockquote>
<p>If running the testsuite requires additional infrastructure (such as systems running the target), the target development team shall arrange to provide such resources to the Rust project, to the satisfaction and approval of the Rust infrastructure team.</p>
</blockquote>
<p>Should I just change that so that tier 2 and tier 1 need the infrastructure team to sign off on the CI requirements/changes to build and test?</p>



<a name="176198664"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198664" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198664">(Sep 20 2019 at 14:41)</a>:</h4>
<p><span aria-label="thumbs up" class="emoji emoji-1f44d" role="img" title="thumbs up">:thumbs_up:</span></p>



<a name="176198674"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198674" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198674">(Sep 20 2019 at 14:41)</a>:</h4>
<p>Will do, that's reasonable.</p>



<a name="176198722"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198722" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198722">(Sep 20 2019 at 14:42)</a>:</h4>
<p>(And I'll mention that that will often happen in the course of reviewing the PR adding the target to CI.)</p>



<a name="176198768"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198768" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198768">(Sep 20 2019 at 14:42)</a>:</h4>
<p>OK, then let's see if we can make some progress on the higher tiers.</p>



<a name="176198844"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198844" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198844">(Sep 20 2019 at 14:43)</a>:</h4>
<p>Right now, here's what I have for tier 2. I'm going to additionally add the requirement for infra signoff on CI.</p>
<p>At this tier, the Rust project guarantees that a target builds, and will reject<br>
patches that fail to build on a target. Thus, we place requirements that ensure<br>
the target will not block forward progress of the Rust project.</p>
<p>- Any new tier 2 target requires compiler team approval.<br>
- Any new tier 2 target must have a designated team of developers on call to<br>
  consult on target-specific build-breaking issues, or if necessary to develop<br>
  target-specific language or library implementation details. (This team should<br>
  in almost all cases have at least 2 developers.)<br>
- The target must not place undue burden on Rust developers not specifically<br>
  concerned with that target. Rust developers may be expected to not<br>
  gratuitously break a tier 2 target, but are not expected to become experts in<br>
  every tier 2 target. and are not expected to provide target-specific<br>
  implementations for every tier 2 target.<br>
- The target development team should not only fix target-specific issues, but<br>
  should use any such issue as an opportunity to educate the Rust community<br>
  about portability to their target.<br>
- The target must build reliably in CI.<br>
- Building the target must not take substantially longer than other targets.<br>
- Tier 2 targets must cross-compile from existing targets, and must not require<br>
  builds on specific target hardware.<br>
- Where possible, tier 2 targets should to provide documentation for the Rust<br>
  community for how to build and run tests for the platform, ideally using<br>
  emulation.<br>
- The target development team should regularly run the testsuite for the<br>
  target, and should fix any test failures in a reasonably timely fashion.<br>
- All tier 3 requirements apply.</p>



<a name="176198955"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198955" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198955">(Sep 20 2019 at 14:44)</a>:</h4>
<p>I do think it'd be useful to try and outline the criteria by which compiler team should decide</p>



<a name="176198956"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198956" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198956">(Sep 20 2019 at 14:44)</a>:</h4>
<p>Highlighting a few specific points: even if we're only build-testing, I think it's important that the target development team regularly run the testsuite and make sure it passes. A target that never passes the testsuite isn't a good look.</p>



<a name="176198964"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198964" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198964">(Sep 20 2019 at 14:44)</a>:</h4>
<p>for example, how many users is enough?</p>



<a name="176198988"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176198988" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176198988">(Sep 20 2019 at 14:45)</a>:</h4>
<p>(or is that not something we should consider)</p>



<a name="176199004"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199004" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199004">(Sep 20 2019 at 14:45)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> So, tier 1 I did have a requirement for that.</p>



<a name="176199022"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199022" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199022">(Sep 20 2019 at 14:45)</a>:</h4>
<blockquote>
<p>Highlighting a few specific points: even if we're only build-testing, I think it's important that the target development team regularly run the testsuite and make sure it passes. A target that never passes the testsuite isn't a good look.</p>
</blockquote>
<p>like, there should be a dedicated site where one can see how recently that dev team ran the test suite successfully or something?</p>



<a name="176199025"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199025" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199025">(Sep 20 2019 at 14:45)</a>:</h4>
<p>Tier 1 I had this: "Tier 1 targets must have substantial, widespread interest within the developer community, and must serve the ongoing needs of multiple production users of Rust."</p>



<a name="176199031"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199031" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199031">(Sep 20 2019 at 14:45)</a>:</h4>
<p>basically I think it's ok if we want to say "the expectation is that we will approve Tier 2 targets if other requirements are met"</p>



<a name="176199042"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199042" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199042">(Sep 20 2019 at 14:45)</a>:</h4>
<p><span class="user-mention" data-user-id="116083">@pnkfelix</span> Not going to require that, just that they actually work on testsuite failures regularly.</p>



<a name="176199107"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199107" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199107">(Sep 20 2019 at 14:46)</a>:</h4>
<p>but maybe that's too strong -- but if it's not these requirements, then what is the basis for saying no?</p>



<a name="176199110"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199110" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199110">(Sep 20 2019 at 14:46)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> Reasonable question. I think there's a certain judgment involved, but it's a lot less than tier 1.</p>



<a name="176199118"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199118" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199118">(Sep 20 2019 at 14:46)</a>:</h4>
<p>Let's talk that out.</p>



<a name="176199127"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199127" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199127">(Sep 20 2019 at 14:46)</a>:</h4>
<p>I think we shouldn't approve a super-niche target as tier 1.</p>



<a name="176199132"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199132" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199132">(Sep 20 2019 at 14:46)</a>:</h4>
<p>(I'm just thinking through the questions I will have when somebody asks :)</p>



<a name="176199133"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199133" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199133">(Sep 20 2019 at 14:46)</a>:</h4>
<p>but the CI won't report testsuite failures for tier 2 (because CI doesn't necessarily run tests for that tier), so one won't necessarily know until some user tries it out, right?</p>



<a name="176199166"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199166" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199166">(Sep 20 2019 at 14:47)</a>:</h4>
<blockquote>
<p>basically I think it's ok if we want to say "the expectation is that we will approve Tier 2 targets if other requirements are met"</p>
</blockquote>
<p>(to be clear, I meant this only for Tier 2 -- I don't think there should be a "Default yes" for Tier 1 at all)</p>



<a name="176199176"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199176" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199176">(Sep 20 2019 at 14:47)</a>:</h4>
<p>I'm just trying to dig into "the testsuite failing is not a good look" -- its a statement I agree with, and I'm wondering how we can make it easy for T-compiler to be able to respond when someone files an issue about it.</p>



<a name="176199177"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199177" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199177">(Sep 20 2019 at 14:47)</a>:</h4>
<p>I think it's completely reasonable to approve a niche target for tier 2, as long as there's <em>some</em> interest. But, for instance, I'd want to have some reasonable basis on which to say "we're not supporting m68k even if there are 1-2 dedicated developers trying to keep it alive". ;)</p>



<a name="176199225"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199225" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199225">(Sep 20 2019 at 14:48)</a>:</h4>
<blockquote>
<p>how we can make it easy for T-compiler to be able to respond when someone files an issue about it.</p>
</blockquote>
<p>(I guess the answer here is that you CC the relevant dev team for such issues)</p>



<a name="176199238"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199238" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199238">(Sep 20 2019 at 14:48)</a>:</h4>
<p><span class="user-mention" data-user-id="116083">@pnkfelix</span> I think it suffices to say "the target development team should not only be regularly <em>using</em> the target, they should be <em>testing</em> the target". :)</p>



<a name="176199252"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199252" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199252">(Sep 20 2019 at 14:48)</a>:</h4>
<p>ok, so it sounds like we want Tier 2 targets to have a "reasonably large community of active users" or smething like that?</p>



<a name="176199262"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199262" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199262">(Sep 20 2019 at 14:48)</a>:</h4>
<p>about testing the target</p>



<a name="176199263"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199263" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199263">(Sep 20 2019 at 14:48)</a>:</h4>
<blockquote>
<p>(I guess the answer here is that you CC the relevant dev team for such issues)</p>
</blockquote>
<p>(this would also fit the ICE-breaker mechanism we are forming)</p>



<a name="176199297"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199297" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199297">(Sep 20 2019 at 14:49)</a>:</h4>
<p>we had a tier 2 platform a few months ago that developed their own parallel CI and had a bot posting a comment on each PR breaking the build</p>



<a name="176199300"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199300" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199300">(Sep 20 2019 at 14:49)</a>:</h4>
<p>should we clarify they should <em>not</em> do that in the policy?</p>



<a name="176199311"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199311" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199311">(Sep 20 2019 at 14:49)</a>:</h4>
<p>I don't think I'd say "reasonably large" (e.g. i686-unknown-uefi is going to be niche by design) but that it needs to have some value for people other than as an exercise.</p>



<a name="176199338"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199338" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199338">(Sep 20 2019 at 14:49)</a>:</h4>
<p>(we (t-infra) already told that target not to do that in the past)</p>



<a name="176199386"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199386" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199386">(Sep 20 2019 at 14:50)</a>:</h4>
<p>I don't mind a tier 3 platform existing just as a pure toy with no value other than "ain't that awesome".</p>



<a name="176199392"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199392" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199392">(Sep 20 2019 at 14:50)</a>:</h4>
<p>hmm so having a parallel CI system seems like good practice, but I guess the part you're objecting to is the part where it implies that the PR author should care ?</p>



<a name="176199401"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199401" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199401">(Sep 20 2019 at 14:50)</a>:</h4>
<p>yeah that was the concern</p>



<a name="176199423"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199423" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199423">(Sep 20 2019 at 14:50)</a>:</h4>
<p>because they were implicitly self-promoting themselves to tier 1 level of commitment from PR authors</p>



<a name="176199444"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199444" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199444">(Sep 20 2019 at 14:50)</a>:</h4>
<p>(Which target was that? You can PM if you'd prefer.)</p>



<a name="176199465"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199465" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199465">(Sep 20 2019 at 14:51)</a>:</h4>
<p><span class="user-mention" data-user-id="121055">@Pietro Albini</span> Seems reasonable. A comment that disclaims itself as informational and tags in some response team but says "you don't need to do anything unless we send a patch" seems more acceptable.</p>



<a name="176199473"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199473" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199473">(Sep 20 2019 at 14:51)</a>:</h4>
<blockquote>
<p>I don't think I'd say "reasonably large" (e.g. i686-unknown-uefi is going to be niche by design) but that it needs to have some value for people other than as an exercise.</p>
</blockquote>
<p>if you find a good way to phrase this, I'm on board; I think it should be added to the list of Tier 2 criteria though, and I think the "compiler-team approval" bullet should be phrased, "Ultimately, the compiler + infra teams will be the one to formally decide if these criteria are met" or something like that. We probably have enough wiggle room in the "it should not place undue burden on Rust team" to reject things that are a pain anyway.</p>



<a name="176199490"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199490" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199490">(Sep 20 2019 at 14:51)</a>:</h4>
<blockquote>
<p>Seems reasonable. A comment that disclaims itself as informational and tags in some response team but says "you don't need to do anything unless we send a patch" seems more acceptable.</p>
</blockquote>
<p>I was going to suggest the same -- that the wording matters a lot.</p>



<a name="176199556"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199556" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199556">(Sep 20 2019 at 14:52)</a>:</h4>
<p>hmm, I don't want to end in a world where we have tons of bots from different targets posting on a PR</p>



<a name="176199563"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199563" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199563">(Sep 20 2019 at 14:52)</a>:</h4>
<p><span class="user-mention" data-user-id="116015">@Alex Crichton</span> had opinions on this too I remember</p>



<a name="176199570"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199570" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199570">(Sep 20 2019 at 14:52)</a>:</h4>
<p>(I'd also be ok with prohibiting the bot practice explicitly)</p>



<a name="176199587"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199587" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199587">(Sep 20 2019 at 14:52)</a>:</h4>
<p>Alright. I'll add a comment that automated build/test bots are acceptable, but must not post comments to PRs that put the onus on the PR author or community to fix them, as that would implicitly raise the tier of the target.</p>



<a name="176199625"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199625" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199625">(Sep 20 2019 at 14:53)</a>:</h4>
<p>(we could instead encourage some kind of dashboard for the target, and maybe link to it from our webpage, so people can get an up-to-date view on the status -- but this is beyond the level of detail (probably) of this doc)</p>



<a name="176199638"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199638" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199638">(Sep 20 2019 at 14:53)</a>:</h4>
<p>(I wonder if labels rather than comments could help here ...?)</p>



<a name="176199640"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199640" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199640">(Sep 20 2019 at 14:53)</a>:</h4>
<p>OK. Let's leave that issue alone for the moment then.</p>



<a name="176199663"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199663" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199663">(Sep 20 2019 at 14:53)</a>:</h4>
<p>(Time-check: 7 minutes remaining :)</p>



<a name="176199687"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199687" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199687">(Sep 20 2019 at 14:53)</a>:</h4>
<p>How do people feel about ratifying the tier 2 policy (with an addition of infra signoff requirements, and some notion of "must be useful")?</p>



<a name="176199816"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199816" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199816">(Sep 20 2019 at 14:55)</a>:</h4>
<p>nit: the phrase "must cross-compile from existing targets" is ambiguous as to whether it means "from all existing targets" or "from some existing target"</p>



<a name="176199851"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199851" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199851">(Sep 20 2019 at 14:55)</a>:</h4>
<p>I'm pretty sure the latter is what is intended</p>



<a name="176199858"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199858" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199858">(Sep 20 2019 at 14:55)</a>:</h4>
<p><span class="user-mention" data-user-id="116083">@pnkfelix</span> In practice the requirement is "must compile on the targets used for CI infrastructure". :)</p>



<a name="176199958"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199958" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199958">(Sep 20 2019 at 14:56)</a>:</h4>
<p>I'll document that more clearly, because that's the real requirement.</p>



<a name="176199963"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199963" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199963">(Sep 20 2019 at 14:56)</a>:</h4>
<p>with an addition about "no bots" that seems fine for me</p>



<a name="176199996"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176199996" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176199996">(Sep 20 2019 at 14:57)</a>:</h4>
<p><span class="user-mention" data-user-id="121055">@Pietro Albini</span> "no bots" or "no bots that put work on others, and stop if we tell you to stop"?</p>



<a name="176200019"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200019" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Tshepang Lekhonkhobe <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200019">(Sep 20 2019 at 14:57)</a>:</h4>
<p>what's the advantage of accepting experimental targets (think those that are not expected to reach tier 2), when they could be maintained outside the tree</p>



<a name="176200020"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200020" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200020">(Sep 20 2019 at 14:57)</a>:</h4>
<p>I'd personally say no bots at all, otherwise we'll get to a point where we will be swarmed</p>



<a name="176200053"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200053" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200053">(Sep 20 2019 at 14:57)</a>:</h4>
<p><span class="user-mention" data-user-id="119529">@Tshepang Lekhonkhobe</span> Coordinating work and building from the official tree without divergence/forks.</p>



<a name="176200097"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200097" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200097">(Sep 20 2019 at 14:58)</a>:</h4>
<blockquote>
<p>"no bots" or "no bots that put work on others, and stop if we tell you to stop"?</p>
</blockquote>
<p>I think a general clause like "you should not take actions to imply that PR authors should fix your bugs; this includes bots that post on PRs that break your target"</p>



<a name="176200126"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200126" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200126">(Sep 20 2019 at 14:58)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> Fair. In that case, people can always <em>ask</em> a team if they really want to do that, with an expectation that they'll get a "no".</p>



<a name="176200139"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200139" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200139">(Sep 20 2019 at 14:58)</a>:</h4>
<p>yep. like, it wouldnt' be better if they used a human to post those comments :)</p>



<a name="176200154"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200154" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200154">(Sep 20 2019 at 14:59)</a>:</h4>
<p>Even further -- don't post on our PRs without authorization from infra team (who may reach out to compiler, etc) about tier N targets being broken by that PR</p>



<a name="176200160"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200160" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200160">(Sep 20 2019 at 14:59)</a>:</h4>
<p>(It might be a reasonable thing to do, for instance, for a tier 2 target that has coordinated with the compiler team to do a "tier 1 dry run", with permission. ;) )</p>



<a name="176200265"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200265" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200265">(Sep 20 2019 at 15:00)</a>:</h4>
<p>OK: How do people feel about ratifying the tier 2 policy (with an addition of infra signoff requirements, and some notion of "must be useful", and a "no bots or putting work on PR authors" clause)?</p>



<a name="176200322"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200322" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200322">(Sep 20 2019 at 15:00)</a>:</h4>
<p>(And I'd ask people to look over the tier 1 policy asynchronously and offer feedback.)</p>



<a name="176200372"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200372" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200372">(Sep 20 2019 at 15:01)</a>:</h4>
<p>I'm planning to submit this policy as documentation linked from the forge tier page and a couple of other places. (Suggestions for a home for it welcome.)</p>



<a name="176200433"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200433" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200433">(Sep 20 2019 at 15:01)</a>:</h4>
<p>We may want an RFC here; I think we should also try to rationalize our existing tiers into the policy</p>



<a name="176200438"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200438" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200438">(Sep 20 2019 at 15:01)</a>:</h4>
<p>but we can discuss that async</p>



<a name="176200452"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200452" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200452">(Sep 20 2019 at 15:01)</a>:</h4>
<p>yeah, an RFC could be good</p>



<a name="176200506"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200506" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200506">(Sep 20 2019 at 15:02)</a>:</h4>
<p>let me rephrase, I think we do want an RFC :)</p>



<a name="176200526"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200526" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200526">(Sep 20 2019 at 15:02)</a>:</h4>
<p>I think an RFC would also give it the appropriate weight so it's not "just" a policy document ratified internally but sort of 'community agreed upon'</p>



<a name="176200530"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200530" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200530">(Sep 20 2019 at 15:02)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> Some of our existing tiers may inherently be exceptions; we don't, for instance, expect a team on call for x86_64-unknown-linux-gnu. :)</p>



<a name="176200541"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200541" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200541">(Sep 20 2019 at 15:02)</a>:</h4>
<p>well t-compiler as a whole is on call for that target :P</p>



<a name="176200558"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200558" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200558">(Sep 20 2019 at 15:03)</a>:</h4>
<p><span class="user-mention" data-user-id="239881">@Josh Triplett</span> well, that may be true, but I think studying the exceptions will help us see problems</p>



<a name="176200581"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200581" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200581">(Sep 20 2019 at 15:03)</a>:</h4>
<p>Agreed.</p>



<a name="176200592"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200592" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200592">(Sep 20 2019 at 15:03)</a>:</h4>
<p>OK. I'll post an RFC then.</p>



<a name="176200594"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200594" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200594">(Sep 20 2019 at 15:03)</a>:</h4>
<p>Thank you, everyone, for the clear feedback!</p>



<a name="176200610"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200610" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200610">(Sep 20 2019 at 15:03)</a>:</h4>
<p>We're out of time. I'm really glad we've made progress on this.</p>



<a name="176200614"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200614" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200614">(Sep 20 2019 at 15:03)</a>:</h4>
<p>thank <em>you</em> for dealing with this mess <span aria-label="heart" class="emoji emoji-2764" role="img" title="heart">:heart:</span></p>



<a name="176200641"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200641" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200641">(Sep 20 2019 at 15:03)</a>:</h4>
<p>Yes, thanks <span class="user-mention" data-user-id="239881">@Josh Triplett</span>! <span aria-label="heart eyes" class="emoji emoji-1f60d" role="img" title="heart eyes">:heart_eyes:</span></p>



<a name="176200645"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200645" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200645">(Sep 20 2019 at 15:03)</a>:</h4>
<p><span class="user-mention" data-user-id="121055">@Pietro Albini</span> No problem. I'm somewhat motivated; I have three targets I want to move to tier 2, myself. ;)</p>



<a name="176200729"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200729" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200729">(Sep 20 2019 at 15:04)</a>:</h4>
<p>(Namely, <code>x86_64-linux-kernel</code>,<code>x86_64-unknown-uefi</code>, and <code>i686-unknown-uefi</code>.)</p>



<a name="176200730"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200730" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200730">(Sep 20 2019 at 15:04)</a>:</h4>
<p>Josh, if you're going to be editing the doc to incorporate suggestions for the meeting, can you also open a PR against the compiler-team repo as the meeting summary? I think it could just include the final doc along with a link to this zulip stream</p>



<a name="176200755"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200755" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200755">(Sep 20 2019 at 15:04)</a>:</h4>
<blockquote>
<p>Also: looking for volunteers to do a summary after the fact.</p>
<p>Example: <a href="https://github.com/rust-lang/compiler-team/pull/173" target="_blank" title="https://github.com/rust-lang/compiler-team/pull/173">https://github.com/rust-lang/compiler-team/pull/173</a> (which summarized our last design meeting)</p>
</blockquote>
<p>I'm repeating this, basically</p>



<a name="176200756"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200756" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200756">(Sep 20 2019 at 15:04)</a>:</h4>
<p><span class="user-mention" data-user-id="116009">@nikomatsakis</span> Sure, I can do that.</p>



<a name="176200760"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200760" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200760">(Sep 20 2019 at 15:05)</a>:</h4>
<p>(well, zulip streams are not visible to people without zulip accounts, unfortunately...)</p>



<a name="176200768"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200768" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200768">(Sep 20 2019 at 15:05)</a>:</h4>
<p>but I don't think the summary has to be "minutes" necessarily :)</p>



<a name="176200779"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200779" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200779">(Sep 20 2019 at 15:05)</a>:</h4>
<p><span class="user-mention" data-user-id="116083">@pnkfelix</span> Oh. :(</p>



<a name="176200784"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200784" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200784">(Sep 20 2019 at 15:05)</a>:</h4>
<blockquote>
<p>(well, zulip streams are not visible to people without zulip accounts, unfortunately...)</p>
</blockquote>
<p>not my problem :P</p>



<a name="176200786"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200786" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200786">(Sep 20 2019 at 15:05)</a>:</h4>
<p>but also, there is an archive</p>



<a name="176200810"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200810" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200810">(Sep 20 2019 at 15:05)</a>:</h4>
<p><a href="https://zulip-archive.rust-lang.org/" target="_blank" title="https://zulip-archive.rust-lang.org/">https://zulip-archive.rust-lang.org/</a></p>



<a name="176200920"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200920" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200920">(Sep 20 2019 at 15:05)</a>:</h4>
<p>not the most readable thing ever though :)</p>



<a name="176200923"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200923" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200923">(Sep 20 2019 at 15:05)</a>:</h4>
<p>but that can be improved...</p>



<a name="176200925"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200925" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200925">(Sep 20 2019 at 15:05)</a>:</h4>
<p>oh i wasn't aware of that</p>



<a name="176200931"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200931" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200931">(Sep 20 2019 at 15:06)</a>:</h4>
<p>when did that go online?</p>



<a name="176200976"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200976" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200976">(Sep 20 2019 at 15:06)</a>:</h4>
<p>I'm not sure who set that up :) but big thanks to them...</p>



<a name="176200989"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200989" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200989">(Sep 20 2019 at 15:06)</a>:</h4>
<p><span class="user-mention" data-user-id="121055">@Pietro Albini</span> On the topic of CI, what would it take for CI to assume that it can run qemu-kvm VMs? That would help for testing UEFI targets, for instance, as well as other interesting x86_64 targets.</p>



<a name="176200990"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200990" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200990">(Sep 20 2019 at 15:06)</a>:</h4>
<p>we should link to <em>that</em> from the compiler website, IMO</p>



<a name="176200999"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176200999" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nikomatsakis <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176200999">(Sep 20 2019 at 15:06)</a>:</h4>
<p>sounds good</p>



<a name="176201012"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176201012" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176201012">(Sep 20 2019 at 15:06)</a>:</h4>
<p><span class="user-mention" data-user-id="239881">@Josh Triplett</span> I think we're already running some qemu tests on CI</p>



<a name="176201022"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176201022" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176201022">(Sep 20 2019 at 15:06)</a>:</h4>
<p><span class="user-mention" data-user-id="121055">@Pietro Albini</span> With KVM acceleration, though?</p>



<a name="176201048"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176201048" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> pnkfelix <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176201048">(Sep 20 2019 at 15:07)</a>:</h4>
<p>I gotta go, but before I do, thanks everyone in <span class="user-group-mention" data-user-group-id="897">@T-compiler/meeting</span> for attending!</p>



<a name="176201049"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176201049" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Pietro Albini <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176201049">(Sep 20 2019 at 15:07)</a>:</h4>
<p>that I'm not sure, we'd need to look into it</p>



<a name="176201987"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176201987" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176201987">(Sep 20 2019 at 15:18)</a>:</h4>
<p><span class="user-mention" data-user-id="116083">@pnkfelix</span> <span class="user-mention" data-user-id="116009">@nikomatsakis</span> zulip archive went online about a month ago, we're using a prototype from the zulip folks -- see some discussion here: <a href="#narrow/stream/122653-zulip/topic/public.20logs.20.2F.20streams" title="#narrow/stream/122653-zulip/topic/public.20logs.20.2F.20streams">https://rust-lang.zulipchat.com/#narrow/stream/122653-zulip/topic/public.20logs.20.2F.20streams</a></p>



<a name="176202027"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176202027" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> simulacrum <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176202027">(Sep 20 2019 at 15:19)</a>:</h4>
<p>repo is <a href="https://github.com/rust-lang/zulip_archive" target="_blank" title="https://github.com/rust-lang/zulip_archive">https://github.com/rust-lang/zulip_archive</a> feel free to ping me for redeploys and such</p>



<a name="176220823"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176220823" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> centril <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176220823">(Sep 20 2019 at 18:55)</a>:</h4>
<p>Sadly missed this meeting;</p>
<blockquote>
<p>the ongoing needs of multiple production users of Rust."</p>
</blockquote>
<p>This feels vague -- I'd expect tier 1 toolchains to serve the needs of a huge number of users (and not from the same company)</p>



<a name="176220915"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176220915" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> centril <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176220915">(Sep 20 2019 at 18:56)</a>:</h4>
<p>(like in the 1000s)</p>



<a name="176224945"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176224945" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176224945">(Sep 20 2019 at 19:49)</a>:</h4>
<p>@Centril I'll clarify. By "multiple production users" I meant distinct entities.</p>



<a name="176224946"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176224946" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176224946">(Sep 20 2019 at 19:49)</a>:</h4>
<p>Many people but all from the same company doesn't count as "multiple production users", even if they work on different products.</p>



<a name="176239322"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176239322" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176239322">(Sep 20 2019 at 23:46)</a>:</h4>
<p>Minutes at <a href="https://github.com/rust-lang/compiler-team/pull/181" target="_blank" title="https://github.com/rust-lang/compiler-team/pull/181">https://github.com/rust-lang/compiler-team/pull/181</a><br>
<span class="user-mention" data-user-id="116009">@nikomatsakis</span></p>



<a name="176249050"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176249050" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nagisa <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176249050">(Sep 21 2019 at 04:49)</a>:</h4>
<p>Missed the mtg too. As somebody who kinda-sorta looks after a bunch of T2/T3 architectures, I think their current status T2/T3 status is perfectly fine, but we should have a more precise definition of how much each target is supported</p>



<a name="176249057"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176249057" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nagisa <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176249057">(Sep 21 2019 at 04:49)</a>:</h4>
<p>Rather than a T1-3 a table with Y/N for various things would help, where things would be: binaries provided, tests run, can x-compile to etc.</p>



<a name="176249103"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176249103" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> nagisa <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176249103">(Sep 21 2019 at 04:50)</a>:</h4>
<p>Even then targets which have <code>N</code> for all of the columns (say AVR) make sense.</p>



<a name="176261282"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176261282" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> centril <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176261282">(Sep 21 2019 at 11:37)</a>:</h4>
<p>Yes but "multitude" can mean 5, 10, 100, ...</p>



<a name="176322192"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176322192" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Josh Triplett <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176322192">(Sep 22 2019 at 18:59)</a>:</h4>
<p><span class="user-mention" data-user-id="126931">@centril</span> I don't want to give a hard number. It's up to the team to judge. It also balances with other factors, such as difficulty of building and maintaining the target.</p>



<a name="176462633"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176462633" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> gnzlbg <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176462633">(Sep 24 2019 at 13:21)</a>:</h4>
<blockquote>
<p>but we should have a more precise definition of how much each target is supported</p>
</blockquote>
<p><span class="user-mention" data-user-id="123586">@nagisa</span> yeah, having to look in the specification files or CI to see if compiler-builtins is built, libcore is built, libstd is built, whether there are CI tests running, etc. is a pain.</p>



<a name="176462803"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176462803" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> gnzlbg <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176462803">(Sep 24 2019 at 13:22)</a>:</h4>
<p>Another thing that's hard to tell is whether one of the Tier-1 compilers is actually able to cross-compile for a different target</p>



<a name="176462850"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176462850" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> gnzlbg <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176462850">(Sep 24 2019 at 13:23)</a>:</h4>
<p>AFAICT we don't test that, e.g., x86_64-unknown-linux-gnu is able to cross-compile, e.g., compiler-builtins or libcore for all the target triplets it accepts</p>



<a name="176462960"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/131828-t-compiler/topic/design%20meeting%202019-09-20/near/176462960" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> gnzlbg <a href="https://rust-lang.github.io/zulip_archive/stream/131828-t-compiler/topic/design.20meeting.202019-09-20.html#176462960">(Sep 24 2019 at 13:24)</a>:</h4>
<p>So we end up with target-triples in tree that are actually impossible to target</p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>